

package com.dog.basics.dao.common;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.dog.basics.bean.dto.admin.common.AdminDogConnectFlowingFromDto;
import com.dog.basics.bean.dto.admin.common.AdminReportFormAgentDto;
import com.dog.basics.bean.dto.admin.common.AdminReportFormFileldDto;
import com.dog.basics.bean.model.common.DogConnectFlowing;
import com.dog.basics.bean.vo.admin.common.AdminDogConnectFlowingVo;
import com.dog.basics.bean.vo.admin.wishwash.AdminReportFormAgentPageVo;
import com.dog.basics.bean.vo.admin.wishwash.AdminReportFormFileldPageVo;
import com.dog.basics.common.util.PageParam;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.math.BigDecimal;
import java.util.List;

/**
 * 用户积分余额流水
 *
 * @author cy code generator
 * @date 2021-04-07 11:23:25
 */
@Mapper
public interface DogConnectFlowingMapper extends BaseMapper<DogConnectFlowing> {

    /**
     * @功能描述: 获取共多少收益
     * @author He
     * @date 2021/7/19
     */
    BigDecimal getSunUserOrderProfit(@Param("userId") Long userId, @Param("startTime") Long startTime, @Param("endTime") Long endTime);

    /**
     * @功能描述: 账户流水
     * @author He
     * @date 2021/7/19
     */
    IPage<AdminDogConnectFlowingVo> getAdminAccountFlow(PageParam page, @Param("obj") AdminDogConnectFlowingFromDto obj);
    BigDecimal getAdminSumAccountFlow(AdminDogConnectFlowingFromDto obj);

    /***
     *  代理商收益综合分页
     * @param param
     * @param dto
     * @return
     * guonh 2021年7月23日
     */
    IPage<AdminReportFormAgentPageVo> getAdminReportFormAgent(PageParam param, @Param("obj") AdminReportFormAgentDto dto);
    List<AdminReportFormAgentPageVo> getAdminReportFormAgentList( @Param("obj") AdminReportFormAgentDto dto);
    /**
     * 代理商收益总和
     * @param dto
     * @return
     * guonh 2021年7月23日
     */
    BigDecimal getAdminReportFormAgentSum( @Param("obj")AdminReportFormAgentDto dto);
    /***
     * 场地收益综合分页
     * @param param
     * @param dto
     * @return
     * guonh 2021年7月23日
     */
    IPage<AdminReportFormFileldPageVo> getAdminReportFormFileld(PageParam param, @Param("obj")  AdminReportFormFileldDto dto);
    List<AdminReportFormFileldPageVo> getAdminReportFormFileldList(@Param("obj")  AdminReportFormFileldDto dto);
    /***
     * 场地收益总和
     * @param dto
     * @return
     * guonh 2021年7月23日
     */
    BigDecimal getAdminReportFormFileldSum(@Param("obj") AdminReportFormFileldDto dto);

    /**
     * @功能描述: 统计金额
     * @author He
     * @date 2021/8/6
     */
    BigDecimal getSumConnectFlowingFrom(AdminDogConnectFlowingFromDto dto);
}
